#ifndef COMMEN_H_
#define COMMEN_H_
#include <stdint.h>
#define RTSP_Handle void
typedef enum __EASY_RTP_CONNECT_TYPE
{
	EASY_RTP_OVER_TCP	=	0x01,		/* RTP Over TCP */
	EASY_RTP_OVER_UDP					/* RTP Over UDP */
}EASY_RTP_CONNECT_TYPE;

typedef enum __EASY_RTP_MEDIUM_TYPE
{
	EASY_RTP_AUDIO,		/* 音频 */
	EASY_RTP_VIDEO	/* 视频 */
}EASY_RTP_MEDIUM_TYPE;

typedef enum __EASY_RTP_MEDIUM_FORM
{
	EASY_RTP_H264,		
	EASY_RTP_H265,	
	EASY_RTP_L16
}EASY_RTP_MEDIUM_FORM;

typedef struct __EASY_FRAME_INFO_T
{
	int bIFrame;		 //0:P帧  1：I帧  2：B帧		
	int NaluType;
	// int u32VpsLength;				/* video vps length */
	// int u32SpsLength;				/* video sps length */
	// int u32PpsLength;				/* video pps length */
	// int u32SeiLength;				/* video sei length */
	// uint8_t	 u8Vps[255];				/* video vps data */
	// uint8_t	 u8Sps[255];				/* video sps data */
	// uint8_t	 u8Pps[128];				/* video pps data */
	// uint8_t	 u8Sei[128];				/* video sei data */
	long tv_sec;
	long tv_usec;
	EASY_RTP_MEDIUM_TYPE frameType;
	EASY_RTP_MEDIUM_FORM frameform;
	int framesize;
	uint8_t *framebuff;

}EASY_FRAME_INFO_T;
typedef int (*RTSPSourceCallBack)(EASY_FRAME_INFO_T frameinfo,void* userdata);


typedef struct {
    uint8_t  *addr;
    int  len;
    uint64_t pts;
} easy_venc_pack;

typedef struct __EASY_VENC_STREAM_T{
    easy_venc_pack  *pack;
    int  pack_cnt;
    
} EASY_VENC_STREAM_T;


#endif // COMMEN_H_